AWK একটি শক্তিশালী টুল যা টেক্সট প্রক্রিয়াকরণ এবং বিশ্লেষণের ক্ষেত্রে বিশেষভাবে কার্যকর। AWK এর একটি গুরুত্বপূর্ণ বৈশিষ্ট্য হল Regular Expressions (RegEx) ব্যবহার করে টেক্সট ম্যাচিং করা। RegEx ব্যবহার করে জটিল টেক্সট প্যাটার্নগুলি সহজেই খুঁজে বের করা যায় এবং তাদের ভিত্তিতে বিভিন্ন কার্যক্রম সম্পাদন করা যায়।
AWK এর Regular Expressions সাধারণত /pattern/
আকারে ব্যবহার করা হয় এবং এটি প্যাটার্ন ম্যাচ হলে নির্দিষ্ট অ্যাকশন কার্যকর হয়।
ধরা যাক, আমরা একটি ফাইল data.txt
এর মধ্যে "error" শব্দটি আছে এমন সব লাইন খুঁজে বের করতে চাই:
awk '/error/ {print $0}' data.txt
এখানে, /error/
একটি RegEx প্যাটার্ন যা "error" শব্দ আছে এমন সব লাইন প্রিন্ট করবে।
awk '/^Start/ {print $0}' data.txt
এখানে, /^Start/
প্যাটার্নটি চেক করবে যে কোন লাইন "Start" শব্দ দিয়ে শুরু হয়েছে।
awk '/end$/ {print $0}' data.txt
এখানে, /end$/
প্যাটার্নটি চেক করবে যে কোন লাইন "end" শব্দ দিয়ে শেষ হয়েছে।
AWK এর RegEx এ কিছু বিশেষ চিহ্ন আছে যা বিশেষভাবে টেক্সট ম্যাচিং এর জন্য ব্যবহার করা হয়:
^
: লাইনের শুরু নির্দেশ করে।$
: লাইনের শেষ নির্দেশ করে।.
: যেকোনো একক অক্ষর নির্দেশ করে।*
: শূন্য বা একাধিক পুনরাবৃত্তি নির্দেশ করে।+
: এক বা একাধিক পুনরাবৃত্তি নির্দেশ করে।[]
: ক্যারেক্টারের সেট নির্দেশ করে।|
: OR অপারেটর নির্দেশ করে।awk '/(error|fail|warning)/ {print $0}' data.txt
এখানে, /(error|fail|warning)/
প্যাটার্নটি চেক করবে যে কোন লাইন "error", "fail", বা "warning" শব্দ ধারণ করে।
awk '/^.{5}$/ {print $0}' data.txt
এখানে, /^.{5}$/
প্যাটার্নটি চেক করবে যে কোন লাইন ঠিক ৫টি অক্ষরের সমান।
AWK এ, নির্দিষ্ট ফিল্ডে প্যাটার্ন ম্যাচিং করা যায়। উদাহরণস্বরূপ, দ্বিতীয় ফিল্ডে যদি নির্দিষ্ট প্যাটার্ন থাকে, তবে সেই লাইন প্রিন্ট করতে:
awk '$2 ~ /[0-9]{3}/ {print $0}' data.txt
এখানে, $2 ~ /[0-9]{3}/
শর্তটি চেক করবে যে দ্বিতীয় ফিল্ডে ৩টি সংখ্যা আছে কিনা।
AWK এ !
অপারেটর ব্যবহার করে প্যাটার্ন বাদ দেওয়া যায়।
awk '!/error/ {print $0}' data.txt
এখানে, !/error/
প্যাটার্নটি সেই সব লাইন প্রিন্ট করবে যেখানে "error" শব্দটি নেই।
AWK এ Regular Expressions ব্যবহার করে টেক্সট ম্যাচিং অত্যন্ত সহজ এবং কার্যকর। এটি ব্যবহার করে আপনি বড় ডেটাসেটের মধ্যে নির্দিষ্ট প্যাটার্ন খুঁজে বের করতে এবং সেই অনুযায়ী প্রক্রিয়াকরণ করতে পারেন। AWK এর RegEx ক্ষমতা ডেটা বিশ্লেষণকে দ্রুত এবং কার্যকরভাবে সম্পন্ন করতে সহায়তা করে।
common.read_more